package com.chb.proxy.dynamic;


import java.lang.reflect.Proxy;

/**
 * @author chihb
 * @create-time 2024/10/24 9:48
 * @description
 */
public class ProxyFactory{
    private Seller seller=new Seller();
    public Sell getProxyInstance(){
        return (Sell)Proxy.newProxyInstance(seller.getClass().getClassLoader(),seller.getClass().getInterfaces(),(proxy,method,args)->{
            System.out.println("代理点收取一些服务费用(JDK动态代理方式)");
            //执行真实对象
            Object invoke = method.invoke(seller, args);
            System.out.println("代理点收取一些服务费用(JDK动态代理方式)");
            return invoke;
        });
    }
}
